package net.rokyinfo.appcontroller.auth;

import com.sun.net.httpserver.HttpPrincipal;
import net.rokyinfo.appcontroller.bean.HttpNettyRequest;
import net.rokyinfo.basedao.entity.User;

public abstract class Authenticator {

    protected User user;

    public Authenticator() {
    }

    public abstract Authenticator.Result authenticate(HttpNettyRequest var1);


    public static class Failure extends Authenticator.Result {
        private int responseCode;

        public Failure(int var1) {
            this.responseCode = var1;
        }

        public int getResponseCode() {
            return this.responseCode;
        }
    }

    public abstract static class Result {
        public Result() {
        }
    }


    public static class Retry extends Authenticator.Result {
        private int responseCode;

        public Retry(int var1) {
            this.responseCode = var1;
        }

        public int getResponseCode() {
            return this.responseCode;
        }
    }


    public static class Success extends Authenticator.Result {
        User user;

        public Success(User var1) {
            this.user = var1;
        }

        public User getUser() {
            return this.user;
        }
    }
}